'''定义类
class ClsName:


'''


#定义出一个类
class Student:
    count = 0
    def __init__(self,name,age): #初始化方法 构造方法 在实例化对象的时候会自动调用
        #self:
        self.name = name
        self.__age = age
        Student.count += 1
    def __fun1(self):  #实例的方法，属于实例化出来对象
        print(f'我是方法{self.__age}')

    def get_age(self): #获取年龄的方法
        return self.__age

    def set_age(self,new_age): #设置修改年龄的方法
        if isinstance(new_age,int):
            if  0 <= new_age <= 100:
                self.__age = new_age
            else:
                raise Exception('年龄超范围')
        else:
            raise TypeError('年龄格式')
# 通过类来实例化一个对象出来
zs = Student('张三',18)
print (zs.get_age())  #原来是直接调用属性，现在得调用特有得方法

zs.set_age(30)
zs.age = 60
print(zs.__dict__)
ls = Student('李四',20)
print(ls.__dict__)
print(Student.count)
# ls.fun1()  #调用实例方法的时候不需要传self




